<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Title</title>
    <script src="../vueJS/VUE.js"></script>
</head>

<body>
    <div id="root">
        <h1>今天天气是{{wether}}</h1>
        <button v-on:click="change">点击更换</button>
        <hr>
        <h3>{{number.a}}</h3>
        <button @click="number.a++">点我让a++</button>
    </div> 
    <script type="text/javascript">
    Vue.config.productionTip = false
    const vm = new Vue({
        el:'#root',
        data:{
            tianqi:true,
            number:{
                a:1,
                b:2
            }
        },
        methods:{
            change(){
                this.tianqi = !this.tianqi
                
            }
        },
        computed:{
            wether:{
                get(){
                    return this.tianqi?'炎热':'凉爽'
                }
            }
        },
        watch:{//监测也可以简写适用于只有Handler，tianqi(){console.log('变化')}
            tianqi:{
                handler(){
                    console.log('变化')
                }
            },
            //现在只监测number里面的a不检测b,标准写法要加引号，可以省略，但是里面如果有特殊字符，需要包起来
            // 'number.a':{
            //     handler(){
            //         console.log('a变化')
            //     }
            // },
            number:{
                deep:true,//不加这个选项，监视的是number的地址改没改变而不是其中的值，但是加上就会监视内部值的改变
                handler(){
                    console.log('change')
                }
            }
        }
        //vm.$watch('tianqi',function(){cs.l})也可以这么简写
    })
    </script>
</body>
</html>